iT邦幫忙

2024 iThome 鐵人賽

DAY 30
0
Software Development

一個好的系統之好維護基本篇 ( 馬克版 )系列 第 30

Day-30: 一個好的系統之維護篇 Roadmap

  • 分享至 

  • xImage
  •  

在這 30 天裡面,我們增加維護性的手法事實上可以分三大類,如下圖 :

https://ithelp.ithome.com.tw/upload/images/20240915/2008935872LaKTTa3P.png


設計原則

這個基本上都是老身長談了,但是矛盾的點在於每個人的理解幾乎都不能算相同,所以這裡比較是去看各種書籍中寫的,然後最後在整合成我自已理解的版本,但就參考吧。

但會把設計原則放在前面是因為,後面幾乎每個實務上面對的東西,最後事實上都和設計原則惜惜相關,所以這東西還是要理解呢。

但事實上還有一些小原則我沒說,但是我也覺得很重要的,就在這裡補充一下。

  • DRY 原則(Don't Repeat Yourself
  • KISS 原則(Keep It Simple, Stupid)
  • YAGNI 原則(You Aren't Gonna Need It)

參考書籍與資料


實務上 Code Review 會看的地方 ( 我覺得說建議比較好 )

這裡大部份比較專注在這個層級,雖然影響範圍沒有像架構一樣那麼大,但積少成多,如果你架構已經穩了,那你只要這些地方處理好,那你的系統在維護面上,我覺得一定可以說好 ~

https://ithelp.ithome.com.tw/upload/images/20240922/20089358lIkTBlL6wn.png

這些比較拉回來實務面時 code review 會看的一些地方。

但我覺得這裡面最難的地方在於三點 :

  1. 執行,要如何讓團隊在 PR Review 時都要在意這些地方。
  2. 客觀與主觀,因為每個人對好維護的理解都不一樣。
  3. 性能與維護的 TradeOff

至於要如何解 ~ 我也還不知道呢 ~

參考書籍與資料


軟體設計模式與方法

https://ithelp.ithome.com.tw/upload/images/20241014/20089358CZzrh10ICd.png

這裡比較偏向這個位置,這一塊比較算是設計模式那一塊,但量級比架構面還小一點,不會像架構要一堆東西一起用之類的,然後有很大一部份都是 Design Pattern 但因為寫的人太多了,所以這裡我只寫一些我覺得比較少出現,但是又非常重要的部份。

然後這裡列一些我覺得寫的很棒的設計模式鐵人賽的文章與網路文章 :

參考書籍與資料


軟體架構篇

https://ithelp.ithome.com.tw/upload/images/20241014/200893582GY16pMCtQ.png

這裡我事實上是以 Domain-Driven Design 為主軸,目前我覺得他應該是公認解決業務複雜變化的一種架構思想,而且他基本上也只是站在前人例如 OOAD、Domain Model 等肩膀上產生出來的,因此我這裡花了很多篇文章在談它的事情。

參考書籍與資料

這裡有點多簡單分類一下,首先是最多的 Domain-Driven Design。

和其它。


高品質的特性與指標

最後的部份就是指標,因為自從當了 tech leader 後,我發現一個好的指標真的可以幫助一個團隊努力往前,例如你看到你的 duplicate code 比例,或是每個 sprint 產的 bug 量有下降,真的會讓人感覺有在前進的 fu,這也是為什麼我這次會花幾篇文章來探討這個主題的原因之一。

參考書籍與資料


總結

希望這一系統的文章可以讓在探索維護性這條路的朋朋們 ~ 有個簡單的地圖 ~ 總於完賽了…… 順到說一下我們家的品質很爛,別覺得我在這裡就好,但我們我自已覺得不是工程師的能力問題 ~ 很大的原因是公司整個團隊結構與流程沒有考慮品質這一塊,但也不是說誰對誰錯 ~ 而就只是優先度的問題 ~ 希望接下來能有更多的時間來聊聊這一塊的心得 ~ 完賽 !!!!!!!

https://ithelp.ithome.com.tw/upload/images/20241014/20089358q1uaf9PpQ1.png


上一篇
Day-29: 如何產生指標之SonarQube + 其它
系列文
一個好的系統之好維護基本篇 ( 馬克版 )30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言